Modern communication systems provide increasing flexibility in how users can route information to themselves. Communications systems now integrate voice, messaging and data interfaces into common clients, such as MSN messenger or Yahoo messenger.
Computer Telephony Integration (CTI) is technology that allows interactions on a telephone and a computer to be integrated or coordinated. As contact channels have expanded from voice to include email, web, and fax, the definition of CTI has expanded to include the integration of all customer contact channels (voice, email, web, fax, etc.) with computer systems.
Some common functions of computer telephony integration include calling line information display, screen population on answer, on screen dialing and on screen phone control (ringing, answer, hang-up, hold, conference etc). Internet Protocol based communication systems, including PBX devices, allow users to transfer incoming telephone calls to alternative communication clients, such as instant messaging systems.
In order to configure such devices, configuration files are passed between a communication client and the communication system. For example, in a PBX device, a user may wish to be notified of incoming calls at an instant messing client while the user is in a meeting, away from his office. In order to inform the PBX that the user wishes to transfer the incoming calls, a configuration interface generates a configuration file and exports the file to the PBX.
The European Computer Manufacturers Association (ECMA) is a non-profit international industry association which establishes standards for information and communication systems. One standard, ECMA-323, specifies an XML protocol Computer Supported Telecommunications Applications (CSTA). Computers can control and monitor telephone switches by sending and receiving XML through TCP/IP protocol. XML has become a popular means to encode requests and responses for client server applications based on service oriented architecture (SOA). The XML configuration file is but one example of a configuration file which may be transmitted between respective service devices.
In communications systems serving a large number of clients, the bandwidth consumed by these configuration files becomes an important consideration. As the number of users and the functionality provided by such systems increase, the increasing bandwidth occupied by these configuration files will become a performance drag on the communication system. In the above example of computer integrated telephony, files that are transmitted between respective systems need to be lossless so that particular commands which are transmitted back and forth and in particular the XML schemas, are maintained. In these cases, the decompressed file and the original file are identical. Lossless compression is used when it is important that the original and decompressed file be essentially identical. Compression of XML files in this manner has been proposed to the ECMA Standards Based Organization in the utilization of ECMA standard 323.